home *** CD-ROM | disk | FTP | other *** search
/ Hardcore Visual Basic 5.0 (2nd Edition) / Hardcore Visual Basic 5.0 - Second Edition (1997)(Microsoft Press).iso / Source / WinTlb / TestTLB.frm < prev    next >
Text File  |  1996-08-15  |  4KB  |  106 lines

  1. VERSION 5.00
  2. Begin VB.Form FTestTLB 
  3.    Caption         =   "Test Type Library"
  4.    ClientHeight    =   5580
  5.    ClientLeft      =   1272
  6.    ClientTop       =   1944
  7.    ClientWidth     =   5544
  8.    LinkTopic       =   "Form1"
  9.    ScaleHeight     =   5580
  10.    ScaleWidth      =   5544
  11.    StartUpPosition =   3  'Windows Default
  12.    Begin VB.Label lblOut 
  13.       BeginProperty Font 
  14.          Name            =   "Courier New"
  15.          Size            =   7.8
  16.          Charset         =   0
  17.          Weight          =   400
  18.          Underline       =   0   'False
  19.          Italic          =   0   'False
  20.          Strikethrough   =   0   'False
  21.       EndProperty
  22.       Height          =   5148
  23.       Left            =   480
  24.       TabIndex        =   0
  25.       Top             =   324
  26.       Width           =   4296
  27.    End
  28. End
  29. Attribute VB_Name = "FTestTLB"
  30. Attribute VB_GlobalNameSpace = False
  31. Attribute VB_Creatable = False
  32. Attribute VB_TemplateDerived = False
  33. Attribute VB_PredeclaredId = True
  34. Attribute VB_Exposed = False
  35. Option Explicit
  36.  
  37. Private Declare Function VarPtr Lib "VBA5" (lpVoid As Any) As Long
  38.  
  39. Private Sub Form_Load()
  40.     Dim f As Boolean, s As String, osver As OSVERSIONINFO
  41.     s = IIf(UnicodeTypeLib, "Unicode", "ANSI") & " Type Library" & sCrLf
  42.     s = s & sCrLf & "GetVersionEx test:" & sCrLf
  43.     osver.dwOSVersionInfoSize = Len(osver)
  44.     f = GetVersionEx(osver)
  45.     If f Then
  46.         s = s & "Major Version: " & osver.dwMajorVersion & sCrLf
  47.         s = s & "Minor Version: " & osver.dwMinorVersion & sCrLf
  48.         s = s & "Build Number:  " & osver.dwBuildNumber & sCrLf
  49.         s = s & "Platform ID:   " & osver.dwPlatformId & sCrLf
  50.         s = s & "CSD Version:   " & GetFixed(osver.szCSDVersion) & sCrLf
  51.     Else
  52.         s = "Can't get version number" & sCrLf
  53.     End If
  54.     s = s & sCrLf
  55.     
  56.     Dim h As Long, find As WIN32_FIND_DATA
  57.     h = FindFirstFile("w*.*", find)
  58.     s = s & sCrLf & "FindFirstFile test:" & sCrLf
  59.     If h Then
  60.         s = s & "Full name:  " & GetFixed(find.cFileName) & sCrLf
  61.         s = s & "Short name: " & GetFixed(find.cAlternateFileName) & sCrLf
  62.         s = s & "Attributes: 0x" & Hex(find.dwFileAttributes) & sCrLf
  63.         s = s & "File size:  " & find.nFileSizeLow & sCrLf
  64.     Else
  65.         s = "Can't find file"
  66.     End If
  67.     s = s & sCrLf
  68.     
  69.     s = s & sCrLf & "CopyMemory test:" & sCrLf
  70.     Dim sJunk As String, sCrap As String
  71.     Dim wLo As Integer, wHi As Integer, dw As Long
  72.     sJunk = "Junk"
  73.     sCrap = "Crap"
  74.     s = s & "Before: " & sJunk & ", " & sCrap & sCrLf
  75.     CopyMemory ByVal sJunk, ByVal sCrap, LenB(sCrap)
  76.     s = s & "After:  " & sJunk & ", " & sCrap & sCrLf
  77.     wLo = &H1234
  78.     wHi = &H4567
  79.     s = s & "1. dw: " & Hex(dw) & " wLo: " & Hex(wLo) & " wHi: " & Hex(wHi) & sCrLf
  80.     CopyMemory dw, wHi, 2
  81.     s = s & "2. dw: " & Hex(dw) & " wLo: " & Hex(wLo) & " wHi: " & Hex(wHi) & sCrLf
  82.     CopyMemory ByVal VarPtr(dw) + 2, wLo, 2
  83.     s = s & "3. dw: " & Hex(dw) & " wLo: " & Hex(wLo) & " wHi: " & Hex(wHi) & sCrLf
  84.     lblOut.Caption = s
  85.     
  86. End Sub
  87.  
  88. Function GetFixed(ab() As Byte) As String
  89.     If UnicodeTypeLib Then
  90.         GetFixed = StrZToStr(CStr(ab))
  91.     Else
  92.         GetFixed = StrZToStr(StrConv(ab, vbUnicode))
  93.     End If
  94. End Function
  95.  
  96. Function StrZToStr(s As String) As String
  97.     Dim i As Integer
  98.     i = InStr(s, Chr$(0))
  99.     If i Then
  100.         StrZToStr = Left$(s, i - 1)
  101.     Else
  102.         StrZToStr = s
  103.     End If
  104. End Function
  105.  
  106.